﻿using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;

namespace VIETPHONG
{
    public partial class frmHoaDon : Form
    {
        public delegate void delPassData(TextBox text);
        VIETPHONGEntities db = new VIETPHONGEntities();
        public frmHoaDon()
        {
            InitializeComponent();
        }

         private void thoátToolStripMenuItem_Click(object sender, EventArgs e)
        {
            this.Close();
        }

         private void frmHoaDon_Load(object sender, EventArgs e)
         {
             dgvhoadon.AutoGenerateColumns = false;
             txtngaylap.Text = DateTime.Now.Date.ToString();
             hienthihoadon();
             hienthibiensoxe();
         }

        private void hienthihoadon()
         {
             var query = from hoadon in db.HOADONs
                         select hoadon;
             dgvhoadon.DataSource = query.ToList();
         }
        private void hienthibiensoxe()
        {
            var query = from bienso in db.XEVANCHUYENs
                        select bienso;
            cbobiensoxe.DataSource = query.ToList();
            cbobiensoxe.DisplayMember = "BIENSOXE";
            cbobiensoxe.ValueMember = "BIENSOXE";
        }

        private void button1_Click(object sender, EventArgs e)
        {
            DialogResult result = MessageBox.Show("Bạn muốn hóa đơn này", "Thông báo", MessageBoxButtons.YesNo);
            if(result==DialogResult.Yes)
            { 
            try
            { 
                HOADON hoadon = new HOADON()
                {
                    MAHOADON=txtmahd.Text,
                    MAUSO=txtmauso.Text,
                    KYHIEU=txtkyhieu.Text,
                    NGAYLAPHD=DateTime.Now.Date,
                    BIENSOXE=cbobiensoxe.SelectedValue.ToString(),
                    MAKHACHHANG=txtmakh.Text                
                };
                ChucNang.ThemHoaDon(hoadon);
                MessageBox.Show("Thêm thành công", "Thông báo");
            }
            catch(Exception ex)
            {
                MessageBox.Show("Thêm thất bại", "Thông báo");
            }
            hienthihoadon();
            }
        }

        private void dgvhoadon_CellClick(object sender, DataGridViewCellEventArgs e)
        {
            try
            {
                DataGridViewRow row = new DataGridViewRow();
                row = dgvhoadon.Rows[e.RowIndex];
                txtmahd.Text = row.Cells[0].Value.ToString();
                txtmauso.Text = row.Cells[1].Value.ToString();
                txtkyhieu.Text = row.Cells[2].Value.ToString();
                txtngaylap.Text = row.Cells[3].Value.ToString();
                cbobiensoxe.Text = row.Cells[4].Value.ToString();
                txtmakh.Text = row.Cells[5].Value.ToString();                
            }
            catch (Exception ex) { }
        }

        private void button2_Click(object sender, EventArgs e)
        {
            DialogResult result = MessageBox.Show("Bạn muốn cập nhật hóa đơn này", "Thông báo", MessageBoxButtons.YesNo);
            if (result == DialogResult.Yes)
            {
                try
                {
                    HOADON hoadon = new HOADON()
                    {
                        MAHOADON = txtmahd.Text,
                        MAUSO = txtmauso.Text,
                        KYHIEU = txtkyhieu.Text,
                        NGAYLAPHD = DateTime.Now.Date,
                        BIENSOXE = cbobiensoxe.SelectedValue.ToString(),
                        MAKHACHHANG = txtmakh.Text
                    };
                    ChucNang.CapNhatHoaDon(hoadon);
                    MessageBox.Show("Cập nhật thành công", "Thông báo");
                }
                catch (Exception ex)
                {
                    MessageBox.Show("Cập nhật thất bại", "Thông báo");
                }
                hienthihoadon();
            }
        }

        private void button3_Click(object sender, EventArgs e)
        {
            DialogResult result = MessageBox.Show("Bạn muốn xóa hóa đơn này", "Thông báo", MessageBoxButtons.YesNo);
            if (result == DialogResult.Yes)
            {
                try
                {
                    HOADON hoadon = new HOADON()
                    {
                        MAHOADON = txtmahd.Text,
                        MAUSO = txtmauso.Text,
                        KYHIEU = txtkyhieu.Text,
                        NGAYLAPHD = DateTime.Now.Date,
                        BIENSOXE = cbobiensoxe.SelectedValue.ToString(),
                        MAKHACHHANG = txtmakh.Text
                    };
                    ChucNang.XoaHoaDon(hoadon);
                    MessageBox.Show("Xóa thành công", "Thông báo");
                }
                catch (Exception ex)
                {
                    MessageBox.Show("Xóa thất bại", "Thông báo");
                }
                hienthihoadon();
            }
        }
    }
}
